HealthCategoryValue Types PRO

This document provides a comprehensive reference for all supported HealthCategoryValue enums used with HealthCategorySample.create() and related APIs. Each enum represents a specific categorical value associated with a HealthCategoryType.


1. HealthCategoryValuePresence

Applicable Types:

  • mindfulSession
  • intermenstrualBleeding
  • sexualActivity
  • pregnancy
  • lactation

Description: Indicates the presence or absence of an event.

ValueMeaning
presentThe event occurred
notPresentThe event did not occur

2. HealthCategoryValueSeverity

Applicable Types:

  • menstrualFlow
  • acneSeverity
  • hairLossSeverity
  • abdominalCramps
  • headache
  • nausea

Description: Represents the severity level of a symptom.

ValueMeaning
unspecifiedNot specified
notPresentNot present
mildMild severity
moderateModerate severity
severeSevere

3. HealthCategoryValueSleepAnalysis

Applicable Types:

  • sleepAnalysis

Description: Categorizes sleep states during a given time range.

ValueMeaning
inBedIn bed (not necessarily asleep)
asleepUnspecifiedAsleep (unspecified phase)
awakeAwake
asleepCoreCore sleep
asleepDeepDeep sleep
asleepREMREM sleep

4. HealthCategoryValueOvulationTestResult

Applicable Types:

  • ovulationTestResult
ValueMeaning
negativeNo LH surge detected
luteinizingHormoneSurgeLH surge detected (ovulation likely)
indeterminateResult unclear
estrogenSurgeEstrogen surge detected

5. HealthCategoryValuePregnancyTestResult

Applicable Types:

  • pregnancyTestResult
ValueMeaning
negativeTest was negative
positiveTest was positive
indeterminateResult unclear

6. HealthCategoryValueProgesteroneTestResult

Applicable Types:

  • progesteroneTestResult
ValueMeaning
negativeTest was negative
positiveTest was positive
indeterminateResult unclear

7. HealthCategoryValueCervicalMucusQuality

Applicable Types:

  • cervicalMucusQuality
ValueMeaning
dryDry
stickySticky
creamyCreamy
wateryWatery
eggWhiteEgg-white texture

8. HealthCategoryValueContraceptive

Applicable Types:

  • contraceptive
ValueMeaning
unspecifiedNot specified
implantContraceptive implant
injectionHormonal injection
intrauterineDeviceIntrauterine device (IUD)
intravaginalRingVaginal ring
oralOral contraceptive
patchTransdermal patch

9. HealthCategoryValueVaginalBleeding (iOS 18+)

Applicable Types:

  • vaginalBleeding
ValueMeaning
unspecifiedNot specified
lightLight bleeding
mediumMedium bleeding
heavyHeavy bleeding
noneNo bleeding

10. HealthCategoryValueAppetiteChanges

Applicable Types:

  • appetiteChanges
ValueMeaning
unspecifiedNot specified
noChangeNo change in appetite
decreasedAppetite decreased
increasedAppetite increased

11. HealthCategoryValueAppleStandHour

Applicable Types:

  • appleStandHour
ValueMeaning
stoodUser stood up
idleUser remained idle

12. HealthCategoryValueAppleWalkingSteadinessEvent

Applicable Types:

  • appleWalkingSteadinessEvent
ValueMeaning
initialLowInitial low stability
initialVeryLowInitial very low stability
repeatLowRepeated low stability
repeatVeryLowRepeated very low stability

13. HealthCategoryValueEnvironmentalAudioExposureEvent

Applicable Types:

  • environmentalAudioExposureEvent
ValueMeaning
momentaryLimitMomentary noise exposure limit exceeded

14. HealthCategoryValueHeadphoneAudioExposureEvent

Applicable Types:

  • headphoneAudioExposureEvent
ValueMeaning
sevenDayLimitExceeded recommended 7-day audio limit

15. HealthCategoryValueLowCardioFitnessEvent

Applicable Types:

  • lowCardioFitnessEvent
ValueMeaning
lowFitnessLow cardio fitness level detected

Usage Example

const sample = HealthCategorySample.create({
  type: "menstrualFlow",
  startDate: new Date("2025-07-03T10:00:00"),
  endDate: new Date("2025-07-03T12:00:00"),
  value: HealthCategoryValueSeverity.moderate
})

await Health.saveCategorySample(sample)

Notes

  • Each enum value must match the type specified in the sample; using an incorrect enum will result in an error.
  • Ensure HealthKit permissions are granted before saving or reading samples.
  • HealthCategorySample values are stored using Apple's HKCategoryTypeIdentifier mapping under the hood.